package com.cjdx.supermarket.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
 * 用户实体类
 * 
 * <p>对应数据库表smbms_user，存储系统用户信息</p>
 * 
 * @author wanjianhong
 * @version 1.0
 * @since 2023-06-01
 * 
 * @TableName 指定对应的数据库表名
 */
@Data
@TableName(value = "smbms_user")
public class User {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id; // 用户ID，主键自增
    private String userCode; // 用户编码，唯一标识
    private String userName; // 用户姓名
    private String userPassword; // 用户密码，加密存储
    private String salt; // 密码加密盐值
    private Integer status; // 用户状态：0-禁用，1-启用
    private Integer gender; // 性别：1-男，2-女
    private Date birthday; // 出生日期
    private String phone; // 联系电话
    private String address; // 联系地址
    private String headUrl; // 头像URL
    private Integer userRole; // 用户角色ID，关联角色表
    private Long createdBy; // 创建人ID
    private Date creationDate; // 创建时间
    private Long modifyBy; // 最后修改人ID
    private Date modifyDate; // 最后修改时间

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", userCode='" + userCode + '\'' +
                ", userName='" + userName + '\'' +
                ", userPassword='" + userPassword + '\'' +
                ", salt='" + salt + '\'' +
                ", status=" + status +
                ", gender=" + gender +
                ", birthday=" + birthday +
                ", phone='" + phone + '\'' +
                ", address='" + address + '\'' +
                ", headUrl='" + headUrl + '\'' +
                ", userRole=" + userRole +
                ", createdBy=" + createdBy +
                ", creationDate=" + creationDate +
                ", modifyBy=" + modifyBy +
                ", modifyDate=" + modifyDate +
                '}';
    }
}
